1.0.2d4 - Fixed the bug where the hex field's width would be quite random. The
          width table was still left in the code segment, when it should have
          been in the data segment. If both segments happend to be loaded into
          the same bank, everything was fine.

        - Hex, signed, and unsigned fields now resize when you change their
          field width via the double-click option dialogs.

        - The Res IDs list (accessible by clicking on the dog ear) now selects
          the member for the current value in the edit line. If there is no
          matching value, then the first item is selected.

        - The moon cursor is now displayed while building the Res IDs list.

        - Fixed the bug where unsigned and signed handlers were really screwing
          up the data they initially displayed. Two one-byte fixes.
	
        - Fixed a bug in ShowValidResIDs (dog ear stuff) that would set a new
          value in the dog ear if Accept was chosen, even if there was nothing
          in the list. Two byte fix.

        - Fixed the cool bug where resizing the window with a string field in
          it would cause the field's scroll bar control to become selected.
          When it was time to turn the marquee back on, we never checked if it
          should be back on. So, we asked the Control Manager for the handle of
          control ID zero. Since all of our fields have IDs increasing from 1,
          and sub-controls of multi-part controls usually get IDs of zero (as is
          the case for Text Edit controls), we got the first scroll bar. This
          fix took about 17 bytes.

        - Fixed a bug that was exactly the same as that above. If you did the
          show field order command (command-option down) with no currently
          selected field, the cleanup code never checked if it should turn the
          marquee back on. Since this now calls the same function above, I saved
          20 or so bytes on this fix.

        - ScriptEdit has this neat little loop that figures out the first
          control that can be made target when it opens up a new window. I
          _thought_ it was intelligent enough, and I was right. It turns out
          that MakeThisCtlTarget isn't as smart. When it's called with an
          invisible control (which obviously can't be made target), it clears
          the target status of the current target control before checking the
          control you want to be made target. This is unfortunate, because the
          Menu Item script has as its first control an invisible Line Edit. I've
          stuck in a little bit of code that makes sure we don't call
          MakeThisCtlTarget on invisible controls. This one cost me a whopping
          32 bytes.

        - When editing a script, the window is now properly set to the size and
          position as specified in the script. This is the location the window
          was at when the script was last edited.
	
        - The moon cursor is now displayed when the edit script code is re-
          creating all of the fields.

        - When there's an active field in a ScriptBuilder window, and you click
          in the content but not in a control, the marquee is removed, and no
          field is set to active. Four bytes.
	
1.0.2d5 - Fixed a stupid, stupid bug in ExtractBoolean. I was passing a control
          ID to GetCtlValue. Last time I checked, it wanted a handle. Oh, wait.
          Quite possibly I was pre-cognitive and knew that Dave was adding
          GetCtlValueByID in 6.0.1. :-) Saved a bunch'a bytes.

        - Fixed the ScriptEdit "target the first control you can find" loop to
          reliably notice that we're out of controls. If you didn't have a
          control that could be targeted in your script, you would get into an
          infinite (but non-destructive) loop. Eight byte fix.

        - Fixed ExtractBoolean to properly deal with longs. If the pop up was
          set to True, and its data length was long, the two high bytes would be
          set to random values. It would be zero, unless a string had previously
          been extracted, then it would be the low word of a handle. Five byte
          fix.

        - The moon cursor is now displayed when parsing a script to edit a
          resource, and also when the script is being walked to save the newly
          edited resource data. Four bytes added per call.

        - Fixed the code that dealt width saving the pop-up rect so it didn't
          allow the controls to grow 1 pixel vertically. If you added a boolean
          field, for example, and then used that script to edit a new resource,
          the control was created 14 pixels tall instead of 13. Six byte fix.

        - Fixed a bug in BuildPopUp which was supposed to resize the new CDR
          to #EnumMemberSize bytes, but it never got called. I've now moved the
          code into SetRefCon, so it can be more general and handle EnumArray,
          Enum, BitArray, and all of the other Bits.

        - Added code to properly copy all OpEnum info from the script to the
          OpEnumArray CDR during an editing session. Now if you create a script
          with an Enum field, set some values via the options window, and come
          back and edit it later, the values won't disappear.

        - I've changed the way editing a script adds the controls. Previously,
          the controls were added at the default location, then MoveControl'ed
          to the location that the script specified. That was icky. Now, there
          is a function that gets called from AddNewControl which gets the
          control position from the script and stores it in the template, before
          the control is even created. Much nicer.
